package com.sdb.prescription.service;

import java.util.List;
import com.sdb.prescription.domain.TdPrescription;

/**
 * 处方Service接口
 * 
 * @author yyh
 * @date 2025-02-06
 */
public interface ITdPrescriptionService 
{
    /**
     * 查询处方
     * 
     * @param id 处方主键
     * @return 处方
     */
    public TdPrescription selectTdPrescriptionById(Long id);

    /**
     * 查询处方列表
     * 
     * @param tdPrescription 处方
     * @return 处方集合
     */
    public List<TdPrescription> selectTdPrescriptionList(TdPrescription tdPrescription);

    /**
     * 新增处方
     * 
     * @param tdPrescription 处方
     * @return 结果
     */
    public int insertTdPrescription(TdPrescription tdPrescription);

    /**
     * 修改处方
     * 
     * @param tdPrescription 处方
     * @return 结果
     */
    public int updateTdPrescription(TdPrescription tdPrescription);

    /**
     * 批量删除处方
     * 
     * @param ids 需要删除的处方主键集合
     * @return 结果
     */
    public int deleteTdPrescriptionByIds(Long[] ids);

    /**
     * 删除处方信息
     * 
     * @param id 处方主键
     * @return 结果
     */
    public int deleteTdPrescriptionById(Long id);

    /**
     * 保存处方
     * @param prescriptionDrugs
     * @return
     */
    int savePrescription(List<TdPrescription> prescriptionDrugs);


    /**
     * 修改收费状态
     * @param tdPrescription
     * @return
     */
    int updateChargeStatus(TdPrescription tdPrescription);

    /**
     * 获取未发药的处方
     * @param tdPrescription
     * @return
     */
    List<TdPrescription> getUnsentPrescriptions(TdPrescription tdPrescription);

    int payByCard(TdPrescription tdPrescription);
}
